package com.qinggeng.project.system.service.impl;

import com.qinggeng.project.system.domain.SysRegion;
import com.qinggeng.project.system.mapper.SysRegionMapper;
import com.qinggeng.project.system.service.ISysRegionService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * 地区Service业务层处理
 *
 * @author qinggeng
 * @date 2020-06-18
 */
@Service
public class SysRegionServiceImpl implements ISysRegionService
{
    @Resource
    private SysRegionMapper sysRegionMapper;

    /**
     * 查询地区
     *
     * @param id 地区ID
     * @return 地区
     */
    @Override
    public SysRegion selectSysRegionById(Long id)
    {
        return sysRegionMapper.selectSysRegionById(id);
    }

    /**
     * 查询地区列表
     *
     * @param sysRegion 地区
     * @return 地区
     */
    @Override
    public List<SysRegion> selectSysRegionList(SysRegion sysRegion)
    {
        return sysRegionMapper.selectSysRegionList(sysRegion);
    }

    /**
     * 新增地区
     *
     * @param sysRegion 地区
     * @return 结果
     */
    @Override
    public int insertSysRegion(SysRegion sysRegion)
    {
        return sysRegionMapper.insertSysRegion(sysRegion);
    }

    /**
     * 修改地区
     *
     * @param sysRegion 地区
     * @return 结果
     */
    @Override
    public int updateSysRegion(SysRegion sysRegion)
    {
        return sysRegionMapper.updateSysRegion(sysRegion);
    }

    /**
     * 批量删除地区
     *
     * @param ids 需要删除的地区ID
     * @return 结果
     */
    @Override
    public int deleteSysRegionByIds(Long[] ids)
    {
        return sysRegionMapper.deleteSysRegionByIds(ids);
    }

    /**
     * 删除地区信息
     *
     * @param id 地区ID
     * @return 结果
     */
    @Override
    public int deleteSysRegionById(Long id)
    {
        return sysRegionMapper.deleteSysRegionById(id);
    }

    @Override
    public SysRegion selectSysRegionByCode(String code, int level) {
        return sysRegionMapper.selectSysRegionByCode(code,level);
    }

    @Override
    public SysRegion selectSysRegionByName(String name, int level) {
        return sysRegionMapper.selectSysRegionByName(name,level);
    }

    /**
     * 根据地区等级查询出各个首字母一样的地区集合
     * @param sysRegion
     * @return
     */
    @Override
    public List<SysRegion> selectSYsRegionListByLevel(SysRegion sysRegion) {

        return sysRegionMapper.selectSYsRegionListByLevel(sysRegion);
    }
}
